home *** CD-ROM | disk | FTP | other *** search
- property spriteNum, pWoordenlijst
- global taalkeuze, tekstkleur, woordenteller, maclist
-
- on beginSprite me
- member(sprite(spriteNum).member).boxType = #adjust
- sprite(spriteNum).visibility = 0
- if taalkeuze = VOID then
- taalkeuze = "nl"
- end if
- if tekstkleur = VOID then
- sprite(spriteNum).member.foreColor = 235
- else
- sprite(spriteNum).member.foreColor = tekstkleur
- end if
- pWoordenlijst = []
- woordenteller = 1
- tekstpad = "@txt:" & taalkeuze & ":"
- fieldnaam = sprite(spriteNum).member.name
- bestandnaam = fieldnaam & ".txt"
- buffer = new(xtra("fileio"))
- openFile(buffer, tekstpad & bestandnaam, 1)
- setPosition(buffer, 0)
- bufferinhoud = readFile(buffer)
- closeFile(buffer)
- put bufferinhoud into member fieldnaam
- repeat with tellertje = 1 to member(fieldnaam).text.length
- if member(fieldnaam).char[tellertje] = numToChar(10) then
- member(fieldnaam).char[tellertje] = EMPTY
- end if
- if member(fieldnaam).char[tellertje].charToNum > 127 then
- if the platform contains "Mac" then
- put numToChar(maclist[member(fieldnaam).char[tellertje].charToNum - 127]) into (member fieldnaam).char[tellertje]
- end if
- end if
- if member(fieldnaam).char[tellertje] = numToChar(32) then
- woordenteller = woordenteller + 1
- end if
- if member(fieldnaam).char[tellertje] = "#" then
- put EMPTY into (member fieldnaam).char[tellertje]
- invoercharacter = EMPTY
- linkbeschrijving = EMPTY
- repeat while invoercharacter <> "|"
- invoercharacter = member(fieldnaam).char[tellertje]
- linkbeschrijving = linkbeschrijving & invoercharacter
- put EMPTY into (member fieldnaam).char[tellertje]
- end repeat
- put EMPTY into linkbeschrijving.char[the length of linkbeschrijving]
- startselectie = tellertje + 2
- repeat while invoercharacter <> "#"
- tellertje = tellertje + 1
- invoercharacter = member(fieldnaam).char[tellertje]
- if member(fieldnaam).char[tellertje] = numToChar(10) then
- member(fieldnaam).char[tellertje] = EMPTY
- end if
- if member(fieldnaam).char[tellertje] = numToChar(32) then
- woordenteller = woordenteller + 1
- end if
- end repeat
- eindeselectie = tellertje - 1
- put EMPTY into (member fieldnaam).char[tellertje]
- link(me, startselectie, eindeselectie, linkbeschrijving, fieldnaam)
- end if
- end repeat
- repeat with i = 1 to pWoordenlijst.count
- if pWoordenlijst[i] <> 0 then
- set the foreColor of word i of member fieldnaam to 214
- end if
- end repeat
- member(sprite(spriteNum).member).boxType = #fixed
- sprite(spriteNum).quad = [point(335, 34), point(474, 34), point(474, 383), point(335, 383)]
- sprite(spriteNum).visibility = 1
- end
-
- on link me, start, eind, linkbeschrijving, fieldnaam
- tijdelijkpunt = member(fieldnaam).charPosToLoc(start)
- tijdelijkpunt.locH = tijdelijkpunt.locH + sprite(spriteNum).left
- tijdelijkpunt.locV = tijdelijkpunt.locV + sprite(spriteNum).top
- startwoord = sprite(spriteNum).pointToWord(tijdelijkpunt)
- tijdelijkpunt = member(fieldnaam).charPosToLoc(eind)
- tijdelijkpunt.locH = tijdelijkpunt.locH + sprite(spriteNum).left
- tijdelijkpunt.locV = tijdelijkpunt.locV + sprite(spriteNum).top
- eindwoord = sprite(spriteNum).pointToWord(tijdelijkpunt)
- repeat with woord = startwoord to eindwoord
- pWoordenlijst.addAt(woord, linkbeschrijving)
- end repeat
- end
-
- on mouseWithin me
- staticmouseword = the mouseWord
- if (staticmouseword <= pWoordenlijst.count) and (staticmouseword > 0) then
- if pWoordenlijst[staticmouseword] <> 0 then
- cursor(280)
- else
- cursor(-1)
- end if
- end if
- end
-
- on mouseLeave me
- cursor(-1)
- end
-
- on mouseUp me
- global naam
- staticmouseword = the mouseWord
- put the mouseWord
- if (staticmouseword <= pWoordenlijst.count) and (staticmouseword > 0) then
- if pWoordenlijst[staticmouseword] <> 0 then
- if pWoordenlijst[staticmouseword].char[1] = "@" then
- naam = pWoordenlijst[staticmouseword]
- put EMPTY into naam.char[1]
- tell the stage
- wisseltje()
- end tell
- else
- put pWoordenlijst[staticmouseword]
- do(pWoordenlijst[staticmouseword])
- end if
- end if
- end if
- end
-